#include "Fantasma.h"

short matrizColisionesCopia[32][28]={
	{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
	{0,1,1,1,1,1,1,1,1,1,3,1,1,0,0,1,1,1,1,1,1,1,1,1,3,1,1,0},
	{0,1,0,0,0,0,1,0,0,0,0,0,1,0,0,1,0,0,0,0,0,1,0,0,0,0,1,0},
	{0,1,0,0,0,0,1,0,0,0,0,0,1,0,0,1,0,0,0,0,0,1,0,0,0,0,1,0},
	{0,1,0,0,0,0,1,0,0,0,0,0,1,0,0,1,0,0,0,0,0,1,0,0,0,0,1,0},
	{0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
	{0,1,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,1,0},
	{0,1,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,1,0},
	{0,1,1,1,3,1,1,0,0,1,1,1,1,0,0,1,1,1,1,0,0,1,1,1,1,1,1,0},
	{0,0,0,0,0,0,1,0,0,0,0,0,2,0,0,2,0,0,0,0,0,1,0,0,0,0,0,0},
	{0,0,0,0,0,0,1,0,0,0,0,0,2,0,0,2,0,0,0,0,0,1,0,0,0,0,0,0},
	{0,0,0,0,0,0,1,0,0,2,2,2,2,2,2,2,2,2,2,0,0,1,0,0,0,0,0,0},
	{0,0,0,0,0,0,1,0,0,2,0,0,0,0,0,0,0,0,2,0,0,1,0,0,0,0,0,0},
	{0,0,0,0,0,0,1,0,0,2,0,0,0,0,0,0,0,0,2,0,0,1,0,0,0,0,0,0},
	{4,2,2,2,2,2,1,2,2,2,0,0,0,0,0,0,0,0,2,2,2,1,2,2,2,2,2,4},
	{0,0,0,0,0,0,1,0,0,2,0,0,0,0,0,0,0,0,2,0,0,3,0,0,0,0,0,0},
	{0,0,0,0,0,0,1,0,0,2,0,0,0,0,0,0,0,0,2,0,0,1,0,0,0,0,0,0},
	{0,0,0,0,0,0,1,0,0,2,2,2,2,2,2,2,2,2,2,0,0,1,0,0,0,0,0,0},
	{0,0,0,0,0,0,1,0,0,2,0,0,0,0,0,0,0,0,2,0,0,1,0,0,0,0,0,0},
	{4,0,0,0,0,0,1,0,0,2,0,0,0,0,0,0,0,0,2,0,0,1,0,0,0,0,0,4},
	{0,1,1,1,1,1,1,1,1,1,1,1,1,0,0,1,1,1,1,1,1,1,1,1,1,1,1,0},
	{0,1,0,0,0,0,1,0,0,0,0,0,1,0,0,1,0,0,0,0,0,1,0,0,0,0,1,0},
	{0,1,0,0,0,0,1,0,0,0,0,0,1,0,0,1,0,0,0,0,0,1,0,0,0,0,1,0},
	{0,1,1,1,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,1,1,1,0},
	{0,0,0,1,0,0,1,0,0,1,0,0,0,0,0,0,0,0,1,0,0,1,0,0,1,0,0,0},
	{0,0,0,1,0,0,1,0,0,1,0,0,0,0,0,0,0,0,1,0,0,1,0,0,1,0,0,0},
	{0,1,1,1,3,1,1,0,0,1,1,1,1,0,0,1,1,1,1,0,0,3,1,1,1,1,1,0},
	{0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0},
	{0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0},
	{0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
	{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}};


cFantasma::cFantasma(MapaSprites animacion,deque<sAnimacionSprites> animacionPiso)
						:cAnimacion(animacion,animacionPiso)
{

	animacionMovimientoX=0;
	animacionMovimientoY=0;
}

void cFantasma::MovimientoFantasmaConTemor(int heroetendenciaX,int heroetendenciaY)
{
	int error=rand()%100;

	if(error>75){
	error=1;
	}
	else 
		error=0;

	if(tendenciaX<=heroetendenciaX+error&&animacionMovimientoX==0)
	{
			if(matrizColisionesCopia[tendenciaY][tendenciaX-1]!=0)
			{
			animacionMovimientoX=-5;
			tendenciaX--;
			}
	}

	 if(tendenciaX>=heroetendenciaX+error&&animacionMovimientoX==0)
	{
			if(matrizColisionesCopia[tendenciaY][tendenciaX+1]!=0)
			{
			animacionMovimientoX=5;
			tendenciaX++;
			}
	}

	 if(tendenciaY>=heroetendenciaY+error&&animacionMovimientoY==0)
	if(matrizColisionesCopia[tendenciaY+1][tendenciaX]!=0)
	{
	animacionMovimientoY=5;
	tendenciaY++;
	}

	 if(tendenciaY<heroetendenciaY+error&&animacionMovimientoY==0)
	if(matrizColisionesCopia[tendenciaY-1][tendenciaX]!=0)
	{
	animacionMovimientoY=-5;
	tendenciaY--;
	}






	if(animacionMovimientoX<0)
	{
		CorrerAnimacionActual(4);

	x-=2;
	animacionMovimientoX++;
	}


 if(animacionMovimientoX>0)
{		CorrerAnimacionActual(4);

	x+=2;
	animacionMovimientoX--;
}


 if(animacionMovimientoY<0)
{		CorrerAnimacionActual(4);

	y-=2;
	animacionMovimientoY++;
}

 if(animacionMovimientoY>0)
{		CorrerAnimacionActual(4);

	y+=2;
	animacionMovimientoY--;
}



}

void cFantasma::MovimientoFantasma(int heroetendenciaX,int heroetendenciaY)
{



	int error=rand()%10;

	if(error>7){
	error=0;
	}

	if(tendenciaX<heroetendenciaX+error&&animacionMovimientoX==0)
	{
			if(matrizColisionesCopia[tendenciaY][tendenciaX+1]!=0)
			{
			animacionMovimientoX=5;
			tendenciaX++;
			}
	}

	if(tendenciaX>heroetendenciaX-error&&animacionMovimientoX==0)
		if(matrizColisionesCopia[tendenciaY][tendenciaX-1]!=0)
		{
		animacionMovimientoX=-5;
		tendenciaX--;
		}

	if(tendenciaY<heroetendenciaY+error&&animacionMovimientoY==0)
		if(matrizColisionesCopia[tendenciaY+1][tendenciaX]!=0)
		{
		animacionMovimientoY=5;
		tendenciaY++;
		}


	if(tendenciaY>heroetendenciaY+error&&animacionMovimientoY==0)
		if(matrizColisionesCopia[tendenciaY-1][tendenciaX]!=0)
		{
		animacionMovimientoY=-5;
		tendenciaY--;
		}





	if(animacionMovimientoX>0)
	{
		CorrerAnimacionActual(0);

	x+=2;
	animacionMovimientoX--;
	}

	if(animacionMovimientoX<0)
	{	CorrerAnimacionActual(0);

	x-=2;
	animacionMovimientoX++;
	}

	if(animacionMovimientoY>0)
	{	CorrerAnimacionActual(0);

	y+=2;
	animacionMovimientoY--;
	}

	if(animacionMovimientoY<0)
	{	CorrerAnimacionActual(0);

	y-=2;
	animacionMovimientoY++;
	}


}